package timing.ukulele.common.constant;

/**
 * 请求 相关常量
 */
public class RequestConstant {

    private RequestConstant() {
        throw new IllegalStateException(ExceptionConstant.UTILITY_CLASS);
    }

    /**
     * 最大请求次数限制
     */
    public static final int DEFAULT_MAX_REQUEST_SIZE = 100;

    /**
     * 自定义请求 Header 相关常量
     */
    public static class Header {

        private Header() {
            throw new IllegalStateException(ExceptionConstant.UTILITY_CLASS);
        }


        /**
         * 自定义 租户ID 请求头
         */
        public static final String X_AUTH_TENANT = "X-TENANT";

        /**
         * 自定义 业务租户ID 请求头
         */
        public static final String X_AUTH_BIZ_TENANT = "X-BIZ-TENANT";

        /**
         * 自定义 用户ID 请求头
         */
        public static final String X_AUTH_USER = "X-USER";

        /**
         * 自定义 用户ID 请求头
         */
        public static final String X_AUTH_USER_ID = "X-USER-ID";

        /**
         * 自定义 姓名 请求头
         */
        public static final String X_AUTH_USER_NAME = "X-USER-NAME";

        /**
         * 自定义 昵称 请求头
         */
        public static final String X_AUTH_USER_NICKNAME = "X-USER-NICKNAME";

        /**
         * 自定义 客户端 请求头
         */
        public static final String X_AUTH_USER_TERMINAL = "X-USER-TERMINAL";

    }

    /**
     * 自定义请求 Message 相关常量
     */
    public static class Message {

        private Message() {
            throw new IllegalStateException(ExceptionConstant.UTILITY_CLASS);
        }


        /**
         * 无效的权限请求头
         */
        public static final String INVALID_REQUEST = "Invalid request auth header";
    }
}
